
//
//  MBTableview.m
//  徐婷
//
//  Created by MB__Lee on 2019/3/1.
//  Copyright © 2019年 MB__Lee. All rights reserved.
//

#import "MBTableview.h"
@interface MBTableview()<UITableViewDelegate,UITableViewDataSource>

@property(nonatomic,assign)BOOL canScroll;
@end

static NSString *identi = @"cell";
@implementation MBTableview

-(instancetype)initWithFrame:(CGRect)frame style:(UITableViewStyle)style{
    if (self = [super initWithFrame:frame style:style]) {
        self.delegate = self;
        self.dataSource = self;
        
        
        
#pragma mark --悬停核心代码
// 接受scrollview 滚动到悬停位置的时候，发送的通知；
        _canScroll = NO;
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getMeg) name:@"atTop" object:nil];
    }
    return  self;
}
//将canScroll 值改为yes，这样在scrollviewDidScroll 方法里面就可以进行相应滚动
-(void)getMeg{
    _canScroll = YES;
}
//
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
//  偏移量
    CGPoint offset = scrollView.contentOffset;
    CGFloat y = offset.y;
    
//当可以滚动的时候，如果tableview 偏移量小0，就将偏移量修改为CGPointZero；
//并且发送通知，告诉scrollview（tableview 所在的父视图），可以进行滚动
    if (_canScroll == YES) {
        if (y < 0) {
            [scrollView setContentOffset:CGPointZero];
            _canScroll = NO;
            [[NSNotificationCenter defaultCenter] postNotificationName:@"leTop" object:nil];
        }
    }else{
//        当不可以进行滚动的时候，将tableview 偏移量设置为CGPointZero；
        [scrollView setContentOffset:CGPointZero];
    }
}


#pragma mark --dataSource
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return  30;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identi];
    if (!cell) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:identi];
        
    }
    cell.textLabel.text = [NSString stringWithFormat:@"第几段%zd --第几列%zd",indexPath.section,indexPath.row];
    return cell;
}



@end
